<text>This software is brought to you courtesy of BungDabba Productions. This software is provided "as is" without warranty of any kind, and BungDabba Productions expressly disclaims all implied warranties, including but not limited to the implied warranties of merchantability and fitness for a particular purpose. The entire risk as to the results and performance of this software is assumed by you.
You are free to use and distribute this stack, or the "Dial" external, anyway you see fit.
© Copyright 1992 by BungDabba Productions. All Rights Reserved.
</text>
</content>
<name></name>
<script>on mouseUp
go next
end mouseUp</script>
</card>
card_4535.xml
<?xml version="1.0" encoding="utf-8" ?>
<!DOCTYPE card PUBLIC "-//Apple, Inc.//DTD card V 2.0//EN" "" >
if the result contains "Error:" then answer the result
--
play harpsichord "ce ae"
answer "Please quit HyperCard to complete installation." ¬-- ∆
with "Cancel" or "Quit"
if it is "Quit" then
domenu "Quit HyperCard"
end if
end installExternal</script>
</part>
<part>
<id>3</id>
<type>button</type>
<visible> <true /> </visible>
<reserved5> 0 </reserved5>
<reserved4> 0 </reserved4>
<reserved3> 0 </reserved3>
<reserved2> 0 </reserved2>
<reserved1> 0 </reserved1>
<enabled> <true /> </enabled>
<rect>
<left>447</left>
<top>17</top>
<right>490</right>
<bottom>57</bottom>
</rect>
<style>transparent</style>
<showName> <false /> </showName>
<highlight> <false /> </highlight>
<autoHighlight> <false /> </autoHighlight>
<sharedHighlight> <true /> </sharedHighlight>
<family>0</family>
<titleWidth>0</titleWidth>
<icon>17264</icon>
<textAlign>center</textAlign>
<font>Chicago</font>
<textSize>12</textSize>
<textStyle>plain</textStyle>
<name></name>
<script>on mouseUp
dial "!"
answer the result
end mouseUp</script>
</part>
<content>
<layer>card</layer>
<id>1</id>
<text><span class="style2">escription:
</span><span class="style1"> With HyperCard 2.1 (and previous versions) the "dial <number> with modem" command does not work for some internal PowerBook modems. Although you can still use the speaker of a PowerBook to generate the dialing tones and dial a phone number, many people would still like to use their internal PowerBook modem. The "Dial" XCMD included in this stack will successfully dial using internal PowerBook modems. Just install the "Dial" XCMD in your Home stack and everything should work fine.
</span><span class="style2">What was the problem?:
</span><span class="style1"> It turns out that there is a problem when using the internal PowerBook modem if the application tries to talk with the modem too quickly. Since almost all applications (except HyperCard) do quite a bit of communications setup before they "talk" with a modem, they will never have a problem. HyperCard is just a little too fast (by only about 2/60ths of a second) for the internal PowerBook modem. HyperCard sends the dial command, but the modem is not ready so nothing happens.
</span><span class="style2">How it works:
</span><span class="style1"> The "Dial" XCMD waits about half a second before sending the dial command to the modem. Waiting for this brief amount of time gives the internal modem a chance to wake up and respond to the dial command. Because this XCMD has the same name as the HyperTalk "dial" command, if you install it in your Home stack it will handle any "dial <number> with modem" command. You will not have to do anything else.
The "Dial" XCMD only handles the "with modem" dial commands. Any other command is passed for HyperCard to handle normally.
</span><span class="style2">Comments:
</span><span class="style1"> The button at the bottom of this card installs the "Dial" XCMD in your current Home stack (or a stack of your choice). It is suggested that you install it in your Home stack because the Home stack is the last stack in HyperCardΓÇÖs message passing hierarchy. Although you can put the "Dial" XCMD into any stack or even "start using" this stack, there may be times when the dial command is called after any stack you choose. Since Home is the last stack in the hierarchy it will be the last stack to handle the "dial" command.
Note that this external is a fix for HyperCard 2.1.
</span><span class="style2">Solving Problems (it still doesnΓÇÖt work?):
</span><span class="style1"> </span><span class="style7">Still no response from the modem…</span><span class="style1"> You might be using the “Phone Dialer” stack. Unfortunately, the “Phone Dialer” stack sends the dial command directly to HyperCard. The Dial XCMD in the Home stack never has a chance to handle the command. In the stack script of the “Phone Dialer” change every instance of "to hyperCard" to "to home".</span><span class="style2">
</span><span class="style1"> </span><span class="style7">I hear a dial tone or the number being dialed, but it stops suddenly…</span><span class="style1"> You may need a longer dialingTime. Internal modems will often take longer to dial. Be sure to set longer dialing times for internal modems (for example: "set the dialingTime to 500"). The “Phone Dialer” stack included in the Claris HyperCard Development Kit for HyperCard 2.1 explains the dialingTime parameter and includes common modem commands.
</span><span class="style7">I don't hear anything…</span><span class="style1"> Make sure that the Macintosh speaker volume is set to a volume that you can hear. If the speaker volume is greater than zero, then the modem may have its monitor speaker turned off. Including "M1" in the modem command (for example: "ATM1DT") turns the monitor speaker on. If there is still no sound, your modem might be configured incorrectly. You can reset your Apple Internal PowerBook modem to the factory setting by using the "AT&FDT" modem command.
</span><span class="style7">The number dials, but when I pick up the phone there is only a dial tone…</span><span class="style1"> An easy solution is to pick up the phone before you dial. However, with a PowerBook internal modem the dialingTime determines how long the modem will be on, and the modem's S7 register determines how long the modem will wait after dialing before hanging up. Set S7 to a longer time in your modem command (for example: "ATS7=5DT"), and set the dialingTime to a time longer than the time it would take to dial your longest number plus the S7 time. The “Phone Dialer” stack included in the Claris HyperCard Development Kit for HyperCard 2.1 helps you modify the S7 time (or "hang up after dialing time").
</span><span class="style7">The button on the first card dialed, but I still can't dial…</span><span class="style1"> The button on the first card uses the modem command "AT&FS7=3DT" and sets the dialingTime to 600. Try these settings. If you still can't dial then the Dial XCMD may not be installed in your current Home stack.